package com.yunxi.yunxicaiproject.entity.po;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.ai.tool.annotation.ToolParam;

/**
 * <p>
 * 校园活动表
 * </p>
 *
 * @author azraelkaxi
 * @since 2025-06-12
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("ai_activity")
public class AiActivity implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 活动ID，主键，自增长
     */
    @TableId(value = "activity_id", type = IdType.AUTO)
    @ToolParam(required = false, description = "活动ID")
    private Integer activityId;

    /**
     * 活动标题
     */
    @ToolParam(required = false, description = "活动标题")
    private String title;

    /**
     * 活动描述
     */
    @ToolParam(required = false, description = "活动具体表述")
    private String description;

    /**
     * 活动地点
     */
    @ToolParam(required = false, description = "活动地点")
    private String location;

    /**
     * 活动开始时间
     */
    @ToolParam(required = false, description = "活动开始时间")
    private LocalDateTime startTime;

    /**
     * 活动结束时间
     */
    @ToolParam(required = false, description = "活动结束时间")
    private LocalDateTime endTime;

    /**
     * 主办方
     */
    @ToolParam(required = false, description = "主办方")
    private String organizer;

    /**
     * 活动状态：0-已取消，1-进行中，2-已结束
     */
    @ToolParam(required = false, description = "活动状态：0-已取消，1-进行中，2-已结束")
    private Integer status;


}
